/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package byblos.apresentacao.informacoes;

import byblos.apresentacao.idioma.InterceptadorIdioma;
import byblos.apresentacao.usuario.InterceptadorCategoriaUsuario;
import byblos.negocio.Idioma;
import byblos.negocio.informacoes.Informacoes;
import byblos.persistencia.DAO;
import byblos.util.StringUtil;
import org.vraptor.annotations.Component;
import org.vraptor.annotations.In;
import org.vraptor.annotations.InterceptedBy;
import org.vraptor.annotations.Out;
import org.vraptor.annotations.Parameter;

/**
 *
 * @author Marco Aurélio
 */
@Component
@InterceptedBy(value = {InterceptadorIdioma.class, InterceptadorCategoriaUsuario.class})
public class InformacoesComponent {

    @In
    private Idioma idioma;
    @Out
    @Parameter(create = true)
    private Informacoes informacoes;
    @Out
    private String mensagemSucesso;
    @Out
    private String mensagemErro;

    public void editar() {
        informacoes = new DAO().localizar(Informacoes.class, "InformacoesPorIdioma", idioma);
        if (informacoes == null) {
            informacoes = new Informacoes();
            informacoes.setIdioma(idioma);
        }
    }

    public void salvar() {
        informacoes.setFormas(StringUtil.substituir(informacoes.getFormas(), "\n", ""));
        informacoes.setFormas(StringUtil.substituir(informacoes.getFormas(), "\r", ""));
        informacoes.setInfo(StringUtil.substituir(informacoes.getInfo(), "\n", ""));
        informacoes.setInfo(StringUtil.substituir(informacoes.getInfo(), "\r", ""));
        informacoes.setPolitica(StringUtil.substituir(informacoes.getPolitica(), "\n", ""));
        informacoes.setPolitica(StringUtil.substituir(informacoes.getPolitica(), "\r", ""));
        new DAO().salvar(informacoes);
    }
}
